The present invention refers to a model, named Web Modeling Language (WebML), which gives support to the activities of specification, design, verification, and implementation of applications for the World Wide Web.
The Web is one of the most promising platforms for the development of computer applications of various kinds.
The Web hosts a large variety of applications, among which the most important is electronic commerce.
Especially the applications dedicated to the purchase of goods and services are expected to have a significant development and to become widespread thanks to the use of the Web by means of new access devices such as the digital television and the cellular telephone. Tools for the development of Web applications are very important because they will influence the capability of companies of offering new Web applications.
The premise for the development of tools for supporting the development of artifacts and applications is the availability of suitable models for the specification of the requirements of the applications under development.
As it is well known, the models for the specification of Web sites are an evolution of the models for the specification of data and of the models for the specification of hypertexts, where an hypertext denotes a nonlinear text whose reading sequence is not predefined but rather follows paths defined by the user.
A well known conceptual model for data specification is the Entity-Relationship model (P. Chen, xe2x80x9cThe entity-relationship model: towards a unified view of dataxe2x80x9d, ACM TODS, 1976, volume 1, number 1, pages 9-36), which introduces the notions of entity, attribute, and relationship, for describing the properties of persistent data managed by a computer application. The Entity-Relationship model does not deal with constructs for the description of features related to the publishing of data as Web pages.
A model proposed for the description of hypertexts is the Dexter model (F. G. Halasz and M. Schwartz, xe2x80x9cThe Dexter hypertext reference modelxe2x80x9d, Communications of the ACM, 1994, volume 37, number 2, pages 30-39), which represents an hypertext as a set of nodes connected by links. The Dexter model is extremely simple and does not permit the separate description of the data structure, the navigation, the composition of nodes, and their presentation.
A further model explicitly proposed for the design of hypertext and multimedia applications is HDM (Hypermedia Design Model) (F. Garzotto, L. Mainetti, P. Paolini, xe2x80x9cHypermedia Design, Analysis, and Evaluation Issuesxe2x80x9d, Communications of the ACM, 1995, Volume 38, Number 8, pages 74-86). This model supports the separation of the data description from the navigation description, i.e., the ability of moving from one page to another page, but it does not support the specification of the composition of pages and of the presentation criteria. Moreover, the supported navigation capabilities are limited a-priori and cannot be extended by the designer.
A further model is RMM (T. Isakowitz, E. Stohr, P. Balasubramanian: xe2x80x9cRMM: A Methodology for Structured Hypermedia Designxe2x80x9d, Communications of the ACM, 1995, Volume 38, Number 8, pages 34-44), which consists of an evolution of the HDM model and of the Entity-Relationship Model. This model is appropriate for the definition of hypermedia applications and Web sites. Also RMM, as HDM, does not support the separated definition of navigation, presentation, and composition, although it offers a limited number, defined a-priori, of possible navigation constructs. Another evolution of HDM is presented in OOHDM (Object-Oriented Hypermedia Design Method) (D. Schwabe, G. Rossi, S. Barbosa, xe2x80x9cSystematic Hypermedia Design with OOHDMxe2x80x9d, Proc. ACM Int. Conf. on Hypertext, 1996, Washington, USA, pp.116-128), which is also appropriate for the definition of hypermedia applications but adopts a limited number, defined a-priori, of possible navigation constructs and requires complex object-oriented modeling for defining the semantics of more powerful navigation mechanisms.
Another model is Araneus (P. Atzeni, G. Mecca, P. Merialdo, xe2x80x9cTo Weave the Webxe2x80x9d, Proc. 23rd Conference on Very Large Data Bases, 1997, Athens, Greece, pages 206-215 and P. Atzeni, G. Mecca, P. Merialdo: xe2x80x9cDesign and Maintenance of Data-Intensive Web Sitesxe2x80x9d. Proc. EDBT, 1998, Valencia, Spain, 436-450xe2x80x9d), which is a methodological proposal for the development of Web sites based on RMM.
Araneus contains a language for the conceptual specification of navigation, called Navigation Conceptual Model (NCM), which is a simplified version of RMM. This model supports the specification of a limited set of possible navigation paths. In addition, Araneus contains a logical model for the definition of the pages of Web sites, named Araneus Data Model (ADM). Such logical model permits the description of a Web page as a set of attributes, lists, navigational anchors, and fields for data insertion. Araneus has the limitation of not supporting the definition at a conceptual level of the presentation aspects of Web pages.
In view of the described state of the art, the object of the present invention is to provide a conceptual model for the specification, design, verification and implementation of Web sites in which page composition and navigation constructs can be arbitrarily modeled by the designer instead of being selected from a predefined set.
This object is obtained by means of a model for the design, verification and development of World-Wide-Web (Web) applications including a structural sub-model, a composition sub-model and a navigation sub-model.
The composition sub-model enables the definition of the elementary pages that compose an application for the Web starting from the structural model.
The navigation sub-model enables the definition of the way of accessing the pages of the Web site from outside, and of the way of moving from a page to another page within the site.
Thanks to the present invention it is possible to define in a formal way Web sites with an arbitrary data structure. It is possible to describe page configurations starting from the aforementioned data structure. It is then possible to introduce navigation paths between pages and define collections of objects for accessing the pages from the outside the Web site. It is also possible to define a different global view of the Web site for each group of homogeneous users or also for each individual user.
The features and the advantages of the present invention will result evident from the subsequent detailed description of a form of practical realization, which is described as a non-restrictive example in the enclosed figures.